#include "../../include/viewer/LightMap.h"

LightMap::LightMap(void)
{
	radius = 100;
	color.set(1,1,1);
	position.setX(0);
	position.setY(0);
	position.setZ(0);

}

LightMap::~LightMap(void)
{
}

void LightMap::setRadius(float r)
{
	radius = fabs(r);
}

float LightMap::getRadius()
{
	return radius;
}

void LightMap::setColor(float r, float g, float b)
{
	color.set(r,g,b);
}

Color LightMap::getColor()
{
	return color;
}

void LightMap::setPosition(float x, float y, float z)
{
	position.setX(x);
	position.setY(y);
	position.setZ(z);
}

void LightMap::setPosition(Vecteur *v){
	setPosition(v->getX(), v->getY(), v->getZ());
}

Vecteur LightMap::getPosition()
{
	return position;
}

Vecteur LightMap::calculerEclairage(Vecteur & pos)
{
	Vecteur ret;
	ret.setX((pos.getX() - position.getX()) / (radius) + 0.5f);
	ret.setY((pos.getY() - position.getY()) / (radius) + 0.5f);
	ret.setZ((pos.getZ() - position.getZ()) / (radius) + 0.5f);
	return ret;
}
